<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Db::set_error_stream()</title>
    <link rel="stylesheet" href="apiReference.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Berkeley DB C++ API Reference" />
    <link rel="up" href="db.html" title="Chapter 2.  The Db Handle" />
    <link rel="prev" href="dbset_errfile.html" title="Db::set_errfile()" />
    <link rel="next" href="dbset_errpfx.html" title="Db::set_errpfx()" />
  </head>
  <body>
    <div xmlns="" class="navheader">
      <div class="libver">
        <p>Library Version 11.2.5.3</p>
      </div>
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Db::set_error_stream()</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="dbset_errfile.html">Prev</a> </td>
          <th width="60%" align="center">Chapter 2. 
                The Db Handle
        </th>
          <td width="20%" align="right"> <a accesskey="n" href="dbset_errpfx.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="dbset_error_stream"></a>Db::set_error_stream()</h2>
          </div>
        </div>
      </div>
      <pre class="programlisting">#include &lt;db_cxx.h&gt;

void Db::set_error_stream(class ostream*); </pre>
      <p>
            When an error occurs in the Berkeley DB library, an exception
            is thrown or an <span class="bold"><strong>errno</strong></span> value 
            is returned by the interface.  In some cases, however, the
            <span class="bold"><strong>errno</strong></span> value may be
            insufficient to completely describe the cause of the error,
            especially during initial application debugging.
   </p>
      <p>
        The <a class="xref" href="envset_error_stream.html" title="DbEnv::set_error_stream()">DbEnv::set_error_stream()</a>  
        and <code class="methodname">Db::set_error_stream()</code> methods are used
        to enhance the mechanism for reporting error messages to the
        application by setting the C++ ostream used for displaying
        additional Berkeley DB error messages.  In some cases, when an
        error occurs, Berkeley DB will output an additional error message
        to the specified stream.
    </p>
      <p>
             The error message will consist of the prefix string and a colon 
             ("<span class="bold"><strong>:</strong></span>") (if a prefix string was 
             previously specified using 
             <a class="xref" href="dbset_errpfx.html" title="Db::set_errpfx()">Db::set_errpfx()</a>, 
             an error string, and a trailing &lt;newline&gt; character.
    </p>
      <p>
            Setting <span class="bold"><strong>stream</strong></span> to NULL unconfigures the interface.
    </p>
      <p>
            Alternatively, you can use the
            <a class="xref" href="envset_errfile.html" title="DbEnv::set_errfile()">DbEnv::set_errfile()</a> or
            <a class="xref" href="dbset_errfile.html" title="Db::set_errfile()">Db::set_errfile()</a> methods
            to display the additional information via a C Library <code class="literal">FILE *</code>,
            or the <a class="xref" href="envset_errcall.html" title="DbEnv::set_errcall()">DbEnv::set_errcall()</a> 
            and <a class="xref" href="dbset_errcall.html" title="Db::set_errcall()">Db::set_errcall()</a>
            methods to capture the additional error information in a way that does not use either
            output streams or C Library <code class="literal">FILE *</code>'s.
            You should not mix these approaches.
    </p>
      <p>
            This error-logging enhancement does not slow performance or significantly increase
            application size, and may be run during normal operation as well as during application
            debugging.
    </p>
      <p>
            For <a class="link" href="db.html" title="Chapter 2.  The Db Handle">Db</a> handles opened inside of Berkeley DB
            environments, calling the <code class="methodname">Db::set_error_stream()</code> method
            affects the entire environment and is equivalent to calling the 
            <a class="xref" href="envset_error_stream.html" title="DbEnv::set_error_stream()">DbEnv::set_error_stream()</a> method.
    </p>
      <p>
         The <code class="methodname">Db::set_error_stream()</code> method may be called at any time during the
         life of the application.
    </p>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp559608"></a>Parameters</h3>
            </div>
          </div>
        </div>
        <div class="sect3" lang="en" xml:lang="en">
          <div class="titlepage">
            <div>
              <div>
                <h4 class="title"><a id="idp550568"></a>stream</h4>
              </div>
            </div>
          </div>
          <p>
                             The <span class="bold"><strong>stream</strong></span> parameter is the
                             application-specified output stream to be used for additional error
                             information.
                     </p>
        </div>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp1908496"></a>Class</h3>
            </div>
          </div>
        </div>
        <p>
                <a class="link" href="db.html" title="Chapter 2.  The Db Handle">Db</a>  
            </p>
      </div>
      <div class="sect2" lang="en" xml:lang="en">
        <div class="titlepage">
          <div>
            <div>
              <h3 class="title"><a id="idp1752256"></a>See Also</h3>
            </div>
          </div>
        </div>
        <p>
                     <a class="xref" href="db.html#dblist" title="Database and Related Methods">Database and Related Methods</a> 
                </p>
      </div>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="dbset_errfile.html">Prev</a> </td>
          <td width="20%" align="center">
            <a accesskey="u" href="db.html">Up</a>
          </td>
          <td width="40%" align="right"> <a accesskey="n" href="dbset_errpfx.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">Db::set_errfile() </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> Db::set_errpfx()</td>
        </tr>
      </table>
    </div>
  </body>
</html>
